package com.autumn.platform.web.request;

import org.springframework.web.context.request.NativeWebRequest;

import com.autumn.platform.core.context.reqeust.IRequest;

public interface IWebRequest extends IRequest {

    /**
     * 获取Spring MVC封装的请求对象
     * 
     * @return
     */
    public NativeWebRequest getNativeWebRequest();

    /**
     * 获取Http方法
     * 
     * @return
     */
    public String getHttpMethod();

    /**
     * 获取请求Url
     * 
     * @return 请求URL
     */
    public String getRequestUrl();

    /**
     * 获取客户端IP
     * 
     * @return 客户端IP
     */
    public String getClientIp();

    /**
     * 获取客户端操作系统
     * 
     * @return 客户端操作系统
     */
    public String getClientOs();

    /**
     * 获取请求的用户代理
     * 
     * @return 请求的用户代理
     */
    public String getUserAgent();

    /**
     * 获取客户端浏览器
     * 
     * @return 客户端浏览器
     */
    public String getClientBrowser();

    /**
     * 获取客户端设备
     * 
     * @return 客户端设备
     */
    public String getClientDevice();
}
